package com.css.dzj.dzjap.modules.record.community.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.util.Date;
import java.util.Objects;

@Entity
@Table(name = "AP_RECORD_GAIN", schema = "DZJAP", catalog = "")
public class ApRecordGainEntity {
    private String recordId;
    private String recordProjectName;
    private String recordProjectAddress;
    private String recordLandArea;
    private String recordLandType;
    private String recordProposedProject;
    private String recordProjectSurvey;
    private String recordUnitName;
    private String recordUnitUser;
    private String recordUnitPhone;
    private String recordUnitCode;
    private String recordUnitLegal;
    private String recordProjectUnitname;
    private String recordProjectContractAmount;
    private String recordProjectUser;
    private String recordProjectPhone;
    private String recordProjectLegal;
    private String recordProjectDirector;
    private String recordProjectCheckunit;
    private Date recordProjectCheckTime;
    private String recordProjectView;
    private String recordProjectFj;
    private Date recordTime;
    private String recordUser;
    private String recordOrg;
    private String recordRemark;
    private String status;
    private String checkUser;
    private String checkUserOrg;
    private String checkResult;
    private String checkView;
    private String recordType;
    private String createUserId;
    private Date createTime;
    private String updateUserId;
    private Date updateTime;
    private String delFlag;
    private String reportStatus;
    private String recordLevel;
    private String RecordPublicStauts;
    private String placePurpose;
    private String placeScale;
    private Date startDate;
    private String deviceLifetime;
    private String certificateType;
    private String certificateNumber;
    private String commitmentUnitCode;
    @Id
    @Column(name = "RECORD_ID")
    public String getRecordId() {
        return recordId;
    }

    public void setRecordId(String recordId) {
        this.recordId = recordId;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_NAME")
    public String getRecordProjectName() {
        return recordProjectName;
    }

    public void setRecordProjectName(String recordProjectName) {
        this.recordProjectName = recordProjectName;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_ADDRESS")
    public String getRecordProjectAddress() {
        return recordProjectAddress;
    }

    public void setRecordProjectAddress(String recordProjectAddress) {
        this.recordProjectAddress = recordProjectAddress;
    }

    @Basic
    @Column(name = "RECORD_LAND_AREA")
    public String getRecordLandArea() {
        return recordLandArea;
    }

    public void setRecordLandArea(String recordLandArea) {
        this.recordLandArea = recordLandArea;
    }

    @Basic
    @Column(name = "RECORD_LAND_TYPE")
    public String getRecordLandType() {
        return recordLandType;
    }

    public void setRecordLandType(String recordLandType) {
        this.recordLandType = recordLandType;
    }

    @Basic
    @Column(name = "RECORD_PROPOSED_PROJECT")
    public String getRecordProposedProject() {
        return recordProposedProject;
    }

    public void setRecordProposedProject(String recordProposedProject) {
        this.recordProposedProject = recordProposedProject;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_SURVEY")
    public String getRecordProjectSurvey() {
        return recordProjectSurvey;
    }

    public void setRecordProjectSurvey(String recordProjectSurvey) {
        this.recordProjectSurvey = recordProjectSurvey;
    }

    @Basic
    @Column(name = "RECORD_UNIT_NAME")
    public String getRecordUnitName() {
        return recordUnitName;
    }

    public void setRecordUnitName(String recordUnitName) {
        this.recordUnitName = recordUnitName;
    }

    @Basic
    @Column(name = "RECORD_UNIT_USER")
    public String getRecordUnitUser() {
        return recordUnitUser;
    }

    public void setRecordUnitUser(String recordUnitUser) {
        this.recordUnitUser = recordUnitUser;
    }

    @Basic
    @Column(name = "RECORD_UNIT_PHONE")
    public String getRecordUnitPhone() {
        return recordUnitPhone;
    }

    public void setRecordUnitPhone(String recordUnitPhone) {
        this.recordUnitPhone = recordUnitPhone;
    }

    @Basic
    @Column(name = "RECORD_UNIT_CODE")
    public String getRecordUnitCode() {
        return recordUnitCode;
    }

    public void setRecordUnitCode(String recordUnitCode) {
        this.recordUnitCode = recordUnitCode;
    }

    @Basic
    @Column(name = "RECORD_UNIT_LEGAL")
    public String getRecordUnitLegal() {
        return recordUnitLegal;
    }

    public void setRecordUnitLegal(String recordUnitLegal) {
        this.recordUnitLegal = recordUnitLegal;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_UNITNAME")
    public String getRecordProjectUnitname() {
        return recordProjectUnitname;
    }

    public void setRecordProjectUnitname(String recordProjectUnitname) {
        this.recordProjectUnitname = recordProjectUnitname;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_CONTRACT_AMOUNT")
    public String getRecordProjectContractAmount() {
        return recordProjectContractAmount;
    }

    public void setRecordProjectContractAmount(String recordProjectContractAmount) {
        this.recordProjectContractAmount = recordProjectContractAmount;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_USER")
    public String getRecordProjectUser() {
        return recordProjectUser;
    }

    public void setRecordProjectUser(String recordProjectUser) {
        this.recordProjectUser = recordProjectUser;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_PHONE")
    public String getRecordProjectPhone() {
        return recordProjectPhone;
    }

    public void setRecordProjectPhone(String recordProjectPhone) {
        this.recordProjectPhone = recordProjectPhone;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_LEGAL")
    public String getRecordProjectLegal() {
        return recordProjectLegal;
    }

    public void setRecordProjectLegal(String recordProjectLegal) {
        this.recordProjectLegal = recordProjectLegal;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_DIRECTOR")
    public String getRecordProjectDirector() {
        return recordProjectDirector;
    }

    public void setRecordProjectDirector(String recordProjectDirector) {
        this.recordProjectDirector = recordProjectDirector;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_CHECKUNIT")
    public String getRecordProjectCheckunit() {
        return recordProjectCheckunit;
    }

    public void setRecordProjectCheckunit(String recordProjectCheckunit) {
        this.recordProjectCheckunit = recordProjectCheckunit;
    }

    @Basic
    @JsonFormat(shape= JsonFormat.Shape.STRING,pattern="yyyy-MM-dd",timezone="GMT+8")
    @Column(name = "RECORD_PROJECT_CHECK_TIME")
    public Date getRecordProjectCheckTime() {
        return recordProjectCheckTime;
    }

    public void setRecordProjectCheckTime(Date recordProjectCheckTime) {
        this.recordProjectCheckTime = recordProjectCheckTime;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_VIEW")
    public String getRecordProjectView() {
        return recordProjectView;
    }

    public void setRecordProjectView(String recordProjectView) {
        this.recordProjectView = recordProjectView;
    }

    @Basic
    @Column(name = "RECORD_PROJECT_FJ")
    public String getRecordProjectFj() {
        return recordProjectFj;
    }

    public void setRecordProjectFj(String recordProjectFj) {
        this.recordProjectFj = recordProjectFj;
    }

    @Basic
    @JsonFormat(shape= JsonFormat.Shape.STRING,pattern="yyyy-MM-dd",timezone="GMT+8")
    @Column(name = "RECORD_TIME")
    public Date getRecordTime() {
        return recordTime;
    }

    public void setRecordTime(Date recordTime) {
        this.recordTime = recordTime;
    }

    @Basic
    @Column(name = "RECORD_USER")
    public String getRecordUser() {
        return recordUser;
    }

    public void setRecordUser(String recordUser) {
        this.recordUser = recordUser;
    }

    @Basic
    @Column(name = "RECORD_ORG")
    public String getRecordOrg() {
        return recordOrg;
    }

    public void setRecordOrg(String recordOrg) {
        this.recordOrg = recordOrg;
    }

    @Basic
    @Column(name = "RECORD_REMARK")
    public String getRecordRemark() {
        return recordRemark;
    }

    public void setRecordRemark(String recordRemark) {
        this.recordRemark = recordRemark;
    }

    @Basic
    @Column(name = "STATUS")
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @Basic
    @Column(name = "CHECK_USER")
    public String getCheckUser() {
        return checkUser;
    }

    public void setCheckUser(String checkUser) {
        this.checkUser = checkUser;
    }

    @Basic
    @Column(name = "CHECK_USER_ORG")
    public String getCheckUserOrg() {
        return checkUserOrg;
    }

    public void setCheckUserOrg(String checkUserOrg) {
        this.checkUserOrg = checkUserOrg;
    }

    @Basic
    @Column(name = "CHECK_RESULT")
    public String getCheckResult() {
        return checkResult;
    }

    public void setCheckResult(String checkResult) {
        this.checkResult = checkResult;
    }

    @Basic
    @Column(name = "CHECK_VIEW")
    public String getCheckView() {
        return checkView;
    }

    public void setCheckView(String checkView) {
        this.checkView = checkView;
    }

    @Basic
    @Column(name = "RECORD_TYPE")
    public String getRecordType() {
        return recordType;
    }

    public void setRecordType(String recordType) {
        this.recordType = recordType;
    }

    @Basic
    @Column(name = "CREATE_USER_ID")
    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    @Basic
    @JsonFormat(shape= JsonFormat.Shape.STRING,pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @Column(name = "CREATE_TIME")
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Basic
    @Column(name = "UPDATE_USER_ID")
    public String getUpdateUserId() {
        return updateUserId;
    }

    public void setUpdateUserId(String updateUserId) {
        this.updateUserId = updateUserId;
    }

    @Basic
    @JsonFormat(shape= JsonFormat.Shape.STRING,pattern="yyyy-MM-dd",timezone="GMT+8")
    @Column(name = "UPDATE_TIME")
    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Basic
    @Column(name = "DEL_FLAG")
    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }
    @Basic
    @Column(name = "REPORT_STATUS")
    public String getReportStatus() {
        return reportStatus;
    }

    public void setReportStatus(String reportStatus) {
        this.reportStatus = reportStatus;
    }
    @Basic
    @Column(name = "RECORD_LEVEL")
    public String getRecordLevel() {
        return recordLevel;
    }

    public void setRecordLevel(String recordLevel) {
        this.recordLevel = recordLevel;
    }
    @Basic
    @Column(name = "RECORD_PUBLIC_STAUTS")
    public String getRecordPublicStauts() {
        return RecordPublicStauts;
    }

    public void setRecordPublicStauts(String recordPublicStauts) {
        RecordPublicStauts = recordPublicStauts;
    }
    @Basic
    @Column(name = "Place_Purpose")
    public String getPlacePurpose() { return placePurpose;  }

    public void setPlacePurpose(String placePurpose) { this.placePurpose = placePurpose; }
    @Basic
    @Column(name = "Place_Scale")
    public String getPlaceScale() { return placeScale; }

    public void setPlaceScale(String placeScale) { this.placeScale = placeScale; }

    @Basic
    @JsonFormat(shape= JsonFormat.Shape.STRING,pattern="yyyy-MM-dd",timezone="GMT+8")
    @Column(name = "Start_Date")
    public Date getStartDate() {  return startDate; }

    public void setStartDate(Date startDate) { this.startDate = startDate; }
    @Basic
    @Column(name = "Device_Lifetime")
    public String getDeviceLifetime() { return deviceLifetime; }

    public void setDeviceLifetime(String deviceLifetime) {  this.deviceLifetime = deviceLifetime; }
    @Basic
    @Column(name = "Certificate_Type")
    public String getCertificateType() { return certificateType; }

    public void setCertificateType(String certificateType) { this.certificateType = certificateType;  }
    @Basic
    @Column(name = "Certificate_Number")
    public String getCertificateNumber() { return certificateNumber;  }

    public void setCertificateNumber(String certificateNumber) { this.certificateNumber = certificateNumber; }
    @Basic
    @Column(name = "Commitment_Unit_Code")
    public String getCommitmentUnitCode() { return commitmentUnitCode; }

    public void setCommitmentUnitCode(String commitmentUnitCode) { this.commitmentUnitCode = commitmentUnitCode; }
    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        ApRecordGainEntity that = (ApRecordGainEntity) o;
        return Objects.equals(recordId, that.recordId) &&
                Objects.equals(recordProjectName, that.recordProjectName) &&
                Objects.equals(recordProjectAddress, that.recordProjectAddress) &&
                Objects.equals(recordLandArea, that.recordLandArea) &&
                Objects.equals(recordLandType, that.recordLandType) &&
                Objects.equals(recordProposedProject, that.recordProposedProject) &&
                Objects.equals(recordProjectSurvey, that.recordProjectSurvey) &&
                Objects.equals(recordUnitName, that.recordUnitName) &&
                Objects.equals(recordUnitUser, that.recordUnitUser) &&
                Objects.equals(recordUnitPhone, that.recordUnitPhone) &&
                Objects.equals(recordUnitCode, that.recordUnitCode) &&
                Objects.equals(recordUnitLegal, that.recordUnitLegal) &&
                Objects.equals(recordProjectUnitname, that.recordProjectUnitname) &&
                Objects.equals(recordProjectContractAmount, that.recordProjectContractAmount) &&
                Objects.equals(recordProjectUser, that.recordProjectUser) &&
                Objects.equals(recordProjectPhone, that.recordProjectPhone) &&
                Objects.equals(recordProjectLegal, that.recordProjectLegal) &&
                Objects.equals(recordProjectDirector, that.recordProjectDirector) &&
                Objects.equals(recordProjectCheckunit, that.recordProjectCheckunit) &&
                Objects.equals(recordProjectCheckTime, that.recordProjectCheckTime) &&
                Objects.equals(recordProjectView, that.recordProjectView) &&
                Objects.equals(recordProjectFj, that.recordProjectFj) &&
                Objects.equals(recordTime, that.recordTime) &&
                Objects.equals(recordUser, that.recordUser) &&
                Objects.equals(recordOrg, that.recordOrg) &&
                Objects.equals(recordRemark, that.recordRemark) &&
                Objects.equals(status, that.status) &&
                Objects.equals(checkUser, that.checkUser) &&
                Objects.equals(checkUserOrg, that.checkUserOrg) &&
                Objects.equals(checkResult, that.checkResult) &&
                Objects.equals(checkView, that.checkView) &&
                Objects.equals(recordType, that.recordType) &&
                Objects.equals(createUserId, that.createUserId) &&
                Objects.equals(createTime, that.createTime) &&
                Objects.equals(updateUserId, that.updateUserId) &&
                Objects.equals(updateTime, that.updateTime) &&
                Objects.equals(delFlag, that.delFlag) &&
                Objects.equals(reportStatus, that.reportStatus) &&
                Objects.equals(recordLevel, that.recordLevel) &&
                Objects.equals(RecordPublicStauts, that.RecordPublicStauts)&&
                Objects.equals(placePurpose, that.placePurpose)&&
                Objects.equals(placeScale, that.placeScale)&&
                Objects.equals(startDate, that.startDate)&&
                Objects.equals(deviceLifetime, that.deviceLifetime)&&
                Objects.equals(certificateType, that.certificateType)&&
                Objects.equals(certificateNumber, that.certificateNumber)&&
                Objects.equals(commitmentUnitCode, that.commitmentUnitCode) ;
    }

    @Override
    public int hashCode() {
        return Objects.hash(recordId, recordProjectName, recordProjectAddress, recordLandArea, recordLandType, recordProposedProject, recordProjectSurvey, recordUnitName, recordUnitUser, recordUnitPhone, recordUnitCode, recordUnitLegal, recordProjectUnitname, recordProjectContractAmount, recordProjectUser, recordProjectPhone, recordProjectLegal, recordProjectDirector, recordProjectCheckunit, recordProjectCheckTime, recordProjectView, recordProjectFj, recordTime, recordUser, recordOrg, recordRemark, status, checkUser, checkUserOrg, checkResult, checkView, recordType, createUserId, createTime, updateUserId, updateTime, delFlag, reportStatus, recordLevel, RecordPublicStauts,placePurpose,placeScale,startDate,deviceLifetime,certificateType,certificateNumber,commitmentUnitCode);
    }
}
